Behavioral Refinement of Software Architectures

نویسنده

  • Andreas Kerschbaumer
چکیده

Formal methods are mathematical techniques which aim at introducing sound engineering principles into software development. Especially in early development phases, where the overall structure of a software system — also called its software architecture — is designed, formal methods help to avoid errors. Therefore, a lot of formal methods based research has been and still is undertaken in the field of software architecture. Architecture specification languages have been developed and formally defined, architectural styles have been specified precisely, and architectural refinements have been rigorously analyzed. This thesis aims at improving the development of software architectures by investigating their behavioral refinement. Up to now, formal analysis of architectural refinements has been based on structure-preserving relations which allow a compositional development. Unfortunately, these formal refinements are not sufficient for the development of architectures. This claim is demonstrated by modeling the behavior of architectures using the formal specification language LOTOS and the temporal logic ACTL, and by analyzing properties of refinements with model-checking techniques. Based on the analysis results, an architectural refinement defined by a set of temporal formulae is proposed. We call such a refinement a non-formal one, because it is not possible to define a formal, structure-preserving relation for it. Unfortunately, non-formal refinement is not fully compositional any more. To overcome this problem, a catalog of architectural patterns and their refinements with formally preanalyzed properties is presented. These patterns help the developer to make more wellfounded design decisions in the architectural development phase. Furthermore, the findings of this thesis form a basis for the enhancement of architectural languages and their tools.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Graph Transformation Based Models of Dynamic Software Architectures and Architectural Styles

Sebastian Thöne ([email protected]) ? International Graduate School of Dynamic Intelligent Systems University of Paderborn, Germany Software architectures play an important role in software development. As abstract models of the run-time structure they help to bridge the gap between user requirements and implementation. In the context of e-business, self-healing, or mobile systems, dynamic architectur...

متن کامل

On Refinement of Software Architectures

Although increasingly popular, software component techniques still lack suitable formal foundations on top of which rigorous methodologies for the description and analysis of software architectures could be built. This paper aims to contribute in this direction: building on previous work by the authors on coalgebraic semantics, it discusses component refinement at three different but interrelat...

متن کامل

Compositional Specification of Parallel Components Using Circus

The # (hash) component model aims to take advantage of a component-based perspective of software for the development of high-performance computing applications targeted at parallel distributed architectures. This paper presents an approach for specifying #-components using Circus, to provide the ability of reasoning about behavioral and functional properties of #-components and their compositio...

متن کامل

Software Connectors and Refinement in Family Architectures

Product families promote reuse of software artifacts such as architectures, designs and implementations. Product family architectures are difficult to create due to the need to support variations. Traditional approaches emphasize the identification and description of generic components, which makes it difficult to support variations among products. This paper presents an approach to modeling fa...

متن کامل

Refinement of Pipe-and-Filter Architectures

Software and hardware architectures are prone to modifications. We demonstrate how a mathematically founded powerful refinement calculus for a class of architectures, namely pipe and filter architectures, can be used to modify a system in a provably correct way. The calculus consists of basic rules to add and to remove filters (components) and pipes (channels) to a system. A networking example ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2002